The _aaaa_dddd_dddd_cccc_hhhh, _wwww_aaaa_dddd_dddd_cccc_hhhh, _mmmm_vvvv_aaaa_dddd_dddd_cccc_hhhh, and _mmmm_vvvv_wwww_aaaa_dddd_dddd_cccc_hhhh routines put the character _c_h
into the window at the current cursor position of the window and advance
the position of the window cursor. Their function is similar to that of
_pppp_uuuu_tttt_cccc_hhhh_aaaa_rrrr. At the right margin, an automatic newline is performed. At the
bottom of the scrolling region, if _ssss_cccc_rrrr_oooo_llll_llll_oooo_kkkk is enabled, the scrolling
region is scrolled up one line.
If _c_h is a tab, newline, or backspace, the cursor is moved appropriately
within the window. A newline also does a _cccc_llll_rrrr_tttt_oooo_eeee_oooo_llll before moving. Tabs
are considered to be at every eighth column. If _c_h is another control
character, it is drawn in the _^^^^_X notation. Calling _wwww_iiii_nnnn_cccc_hhhh after adding a
control character does not return the control character, but instead
returns the representation of the control character.
Video attributes can be combined with a character by OR-ing them into the
parameter. This results in these attributes also being set. (The intent
here is that text, including attributes, can be copied from one place to
another using _iiii_nnnn_cccc_hhhh and _aaaa_dddd_dddd_cccc_hhhh.) [see _ssss_tttt_aaaa_nnnn_dddd_oooo_uuuu_tttt, predefined video attribute
constants, on the _cccc_uuuu_rrrr_ssss______aaaa_tttt_tttt_rrrr(3X) page].
The _eeee_cccc_hhhh_oooo_cccc_hhhh_aaaa_rrrr and _wwww_eeee_cccc_hhhh_oooo_cccc_hhhh_aaaa_rrrr routines are functionally equivalent to a call
to _aaaa_dddd_dddd_cccc_hhhh followed by a call to _rrrr_eeee_ffff_rrrr_eeee_ssss_hhhh, or a call to _wwww_aaaa_dddd_dddd_cccc_hhhh followed by a
call to _wwww_rrrr_eeee_ffff_rrrr_eeee_ssss_hhhh. The knowledge that only a single character is being
output is taken into consideration and, for non-control characters, a
considerable performance gain might be seen by using these routines
instead of their equivalents.
LLLLiiiinnnneeee GGGGrrrraaaapppphhhhiiiiccccssss
The following variables may be used to add line drawing characters to the
screen with routines of the _aaaa_dddd_dddd_cccc_hhhh family. When variables are defined for
the terminal, the _AAAA______AAAA_LLLL_TTTT_CCCC_HHHH_AAAA_RRRR_SSSS_EEEE_TTTT bit is turned on [see _cccc_uuuu_rrrr_ssss______aaaa_tttt_tttt_rrrr(3X)].
Otherwise, the default character listed below is stored in the variable.
The names chosen are consistent with the VT100 nomenclature.
All routines return the integer _EEEE_RRRR_RRRR upon failure and an integer value
other than _EEEE_RRRR_RRRR upon successful completion, unless otherwise noted in the
preceding routine descriptions.
NNNNOOOOTTTTEEEESSSS
The header file _cccc_uuuu_rrrr_ssss_eeee_ssss_...._hhhh automatically includes the header files _ssss_tttt_dddd_iiii_oooo_...._hhhh
and _uuuu_nnnn_cccc_tttt_rrrr_llll_...._hhhh.
Note that _aaaa_dddd_dddd_cccc_hhhh, _mmmm_vvvv_aaaa_dddd_dddd_cccc_hhhh, _mmmm_vvvv_wwww_aaaa_dddd_dddd_cccc_hhhh, and _eeee_cccc_hhhh_oooo_cccc_hhhh_aaaa_rrrr may be macros.